【笔记】GIT代码管理&提交规范
[笔记系列文章说明]: 该类型的文章是笔者学习过程中整理的学习笔记.
本篇整理一下项目中用到的管理代码的规范
一, 项目分支结构
分支环境:
开发环境:dev
测试环境:test
预生产环境:prev
生产环境:master
根据需要会分出test_2.0、test_bug等次级分支,测试到上线都会在这个分支进行。最终会同步到test、master分支。
二, 需求&BUG分支创建与命名
分支代码从prev拉取
分支命名规则: 项目名++日期++类型++开发名称/bug号/bug名称(++修复人标识)
需求开发分支命名:
1 | stc_20210629_dev_version2 |
BUG修复分支命名:
1 | stc_20210629_bug_205 |
三, 项目开发GIT代码提交规范
- 多人协作分支开发提交(单人使用分支可直接提交到分支)
1 | git stash 保存代码 |
提示: 如使用idea ui提交, 遇到下图提示,选择rebase, 遇到冲突解决冲突后提交,注意不要覆盖和遗漏代码,解决冲突时请慎重对比!!!
- 分支开发结束后合并dev
原则: 分支合并dev的最新代码后再合并到dev
- 第零步, 切换到dev分支
1 | git pull --rebase // 确保本地dev分支代码为最新的 |
- 第一步, 切换到开发分支
1 | git pull --rebase |
有冲突解决冲突
- 第二步, 切换到dev分支
1 | git pull --rebase |
- dev分支合并到test分支
- 第一步, 切换到test分支
1 | git pull --rebase |
- test分支合并到prev分支
- 第一步, 切换到prev分支
1 | git pull --rebase |
- prev分支合并到master分支
- 第一步, 切换到master分支
1 | git pull --rebase |
合并提交,保证有问题可以快速回滚部署
- 原则上不需要提交自己使用分支。允许提交自己分支,但是上线完成后自行删除
四, 常见问题
- commit后还未push,如何撤销
1 | git reset --soft HEAD~1 // 未达到效果继续执行, 数字代表reset commit的次数 |
【笔记】GIT代码管理&提交规范